The present invention relates to an apparatus for generating an aperiodic waveform having an envelope which decays gradually with time.
It is known to construct an electronic musical instrument using a digital memory in which an audio waveform is stored in sampled form. The stored audio waveform is conventionally read out of the memory at a constant rate in response to an address counter and is then converted to an analog signal by a digital-to-analog converter. In systems of this type it is desirable to store the digital samples using as few binary digits as possible in order to minimize the cost of the memory. In the case of periodic waveforms, it is common to store digital samples defining only one period of the waveform, the remainder of the waveform being derived through calculations performed on the stored samples. Audio waveforms which are not periodic in nature, such as complex percussive waveforms which decay gradually with time, cannot, however, be treated in this manner. In order to faithfully reproduce such waveforms using the sequential sampling technique, it is necessary to store substantially the entire waveform in sampled form. However, the number of quantum steps representing the amplitude of the percussive waveform reduces as it decays to a low level and as a result the signal-to-noise ratio will continuously decrease as the waveform decays.
An aperiodic waveform generator as shown and described in U.S. Pat. No. 4,267,579, discloses a technique by which a sequence of digital samples representing an aperiodic waveform is grouped into first and second continuous portions, the digital samples of the second portion comprising that portion of the sequence in which none of the digital samples have a magnitude exceeding 1/2 the magnitude of the largest of the digital samples and being scaled by a factor of 2. The digital samples of the first and second portions are sequentially stored in a waveshape memory and are recalled by an address code developed in an address counter. A second memory is provided to store address code indicating the beginning of the scaled second portion in order for a scaler to scale the digital samples read out of waveshape memory for conversion to a signal having a magnitude corresponding to its associated digital sample of the sequence.